Comprendre le concept de liste.
Mettre en œuvre le concept de boucle pour résoudre des problèmes simples et traiter des listes.
Mettre en œuvre le concept de boucle dans le cas où on ne connaît pas le nombre de fois que la boucle peut être exécutée.
Démarche de résolution de problèmes
Les différents programmes que vous devez réaliser seront nommés ALP-S9Ex1 à ALP-S9Ex7 et se trouveront dans un dossier nommé ALP-S9.
Dans cet exercice, vous allez écrire des fonctions permettant d'extraire des données d'une liste
premier_de_la_liste(liste)
qui retourne la première valeur de la liste passée en paramètredernier_de_la_liste(liste)
qui retourne la dernière valeur de la liste passée en paramètre.avant_dernier_de_la_liste(liste)
qui retourne l'avant-dernière valeur de la liste passée en paramètre.nieme_valeur_de_la_liste(liste, n)
qui retourne la nième valeur de la liste (n
et liste
passés en paramètres).Testez vos fonctions avec les listes suivantes à insérer en constantes dans vos programmes:
L10_INT = [-3, -1, 0, 1, 1, 4, 6, -1, 7, 8] #liste de 10 nombres entiers
L2_STR = ["alice", "bob"] #liste de deux chaînes de caractères
L1_FLO = [-3.5] #liste de un seul nombre réel
L0 = [] #liste vide
Questions:
a. Que se passe-t-il si la liste passée en paramètre est vide ? b. Que se passe-t-il si pour une liste de 2 éléments, on demande le 3ème ?
Reprenez l'exercice T1 de la série 8 (spirale colorée). À la place des couleurs codées en dur ou sous forme de constantes individuelles,
utilisez une constante contenant la liste des couleurs:
COULEURS = ['yellow', 'green', 'blue', 'red']
Essayez au maximum de simplifier votre code grâce à cette liste.
Ecrire une procédure afficher_liste(ma_liste)
qui affiche chaque élément d'une liste sur une nouvelle ligne. Réutilisez les listes de l'Exercice 1.
Ecrire une procédure afficher_positifs(nombres)
qui affiche les éléments strictement positifs d'une liste de nombres. Réutilisez la liste des 10 nombres entiers de l'Exercice 1.
Afficher le nombre d'éléments d'une liste d'entiers ma_liste
dont la valeur est compris entre 2 valeurs saisies, val_min
et val_max
(inégalités strictes).
Notez bien: la position des éléments dans la liste n'a pas d'importance, c'est uniquement leur valeur qui est prise en compte!
Vous reconnaîtrez la liste de 10 entiers de l'Exercice 1.
ma_liste | val_min | val_max | nombre d'éléments |
---|---|---|---|
[-3, -1, 0, 1, 1, 4, 6, -1, 7, 8] | 3 | 5 | 1 |
[-3, -1, 0, 1, 1, 4, 6, -1, 7, 8] | -1 | 1 | 1 |
[-3, -1, 0, 1, 1, 4, 6, -1, 7, 8] | -10 | 9 | 10 |
[-3, -1, 0, 1, 1, 4, 6, -1, 7, 8] | 2 | 7 | 2 |
[-3, -1, 0, 1, 1, 4, 6, -1, 7, 8] | 5 | 5 | 0 |
À partir de la donnée des relevés de température pour les 7 jours de la semaine, calculer au moyen de 2 fonctions différentes et afficher :
RELEVES = [11.8, 14.4, 18.6, 16.5, 11.5, 12.3, 9.1]
# temp. moyennes relevées à Genève du 30.09 au 6.10.2021
# https://prevision-meteo.ch/climat/journalier/geneve-cointrin/2021-10
À partir de la donnée des relevés des notes de 16 élèves d'une classe, calculer au moyen de 4 fonctions différentes et afficher :
NOTES = [3, 6, 5.5, 4.5, 2.5, 4, 5, 4, 3, 4, 2.5, 4.5, 5, 5, 4, 3]
# notes d'un vrai groupe
L’ESIG organise une soirée pour la fête de l'Escalade. Elle vous demande de lui fournir un petit outil permettant de vérifier que le nombre de personnes admises respecte la limite imposée par les normes de sécurité.
Pour cela, écrire une procédure `controle_escalade`` qui prendra deux paramètres :
Cf. sorties attendues. Le principe est que le parcours de la liste s'interrompt une fois qu'on atteint la jauge. Les données sont ainsi faites qu'une liste contient toujours assez de personnes pour atteindre ou dépasser la jauge.
Dans une deuxième temps, à partir de votre solution et de vos réflexions, demandez-vous si votre solution interdit le dépassement de la jauge ou en autorise le dépassement en laissant entrer le dernier groupe traité. Les deux types de solution sont acceptés et vous pourrez alors écrire une variante de votre procédure qui adopte l'autre comportement.